.TH IPERF 1 "July 2010" NLANR/DAST "User Manuals"
.SH NAME
iperf3 \- perform network throughput tests
.SH SYNOPSIS
.B iperf3 -s [
.I options
.B ]
.br
.B iperf3 -c 
.I server
.B [
.I options
.B ]

.SH DESCRIPTION
iperf3 is a tool for performing network throughput measurements.  It can test
either TCP or UDP throughput.  To perform an iperf3 test the user must
establish both a server and a client.

.SH "GENERAL OPTIONS"
.TP
.BR -p ", " --port " \fIn\fR"
set server port to listen on/connect to to \fIn\fR (default 5201)
.TP
.BR -f ", " --format " "
[kmKM]   format to report: Kbits, Mbits, KBytes, MBytes
.TP
.BR -i ", " --interval " \fIn\fR"
pause \fIn\fR seconds between periodic bandwidth reports
.TP
.BR -V ", " --verbose " "
give more detailed output 
.TP
.BR -J ", " --json " "
output in JSON format
.TP
.BR -d ", " --debug " "
debug mode
.TP
.BR -v ", " --version " "
show version information and quit
.TP
.BR -h ", " --help " "
show a help synopsis

.SH "SERVER SPECIFIC OPTIONS"
.TP
.BR -s ", " --server " "
run in server mode

.SH "CLIENT SPECIFIC OPTIONS"
.TP
.BR -c ", " --client " \fIhost\fR"
run in client mode, connecting to the specified server
.TP
.BR -u ", " --udp
use UDP rather than TCP
.TP
.BR -b ", " --bandwidth " \fIn\fR[KM]"
set target bandwidth to \fIn\fR bits/sec (default 1 Mbit/sec). Requires UDP mode (-u)
.TP
.BR -t ", " --time " \fIn\fR"
time in seconds to transmit for (default 10 secs)
.TP
.BR -n ", " --bytes " \fIn\fR[KM]"
number of bytes to transmit (instead of -t)
.TP
.BR -l ", " --length " \fIn\fR[KM]"
length of buffer to read or write (default 128 KB for TCP, 8KB for UDP)
.TP
.BR -P ", " --parallel " \fIn\fR"
number of parallel client streams to run
.TP
.BR -R ", " --reverse
run in reverse mode (server sends, client receives)
.TP
.BR -w ", " --window " \fIn\fR[KM]"
TCP window size (socket buffer size)
.TP
.BR -B ", " --bind " \fIn\fR[KM]"
bind to a specific interface or multicast address
.TP
.BR -M ", " --set-mss " \fIn\fR"
set TCP maximum segment size (MTU - 40 bytes)
.TP
.BR -N ", " --no-delay " "
set TCP no delay, disabling Nagle's Algorithm
.TP
.BR -4 ", " --version4 " "
only use IPv4
.TP
.BR -6 ", " --version6 " "
only use IPv6
.TP
.BR -S ", " --tos " \fIn\fR"
set the IP 'type of service'
.TP
.BR -Z ", " --zerocopy " "
Use a "zero copy" method of sending data, such as sendfile(2),
instead of the usual write(2).

.SH AUTHORS
Iperf was originally written by Mark Gates and Alex Warshavsky.
Man page and maintence by Jon Dugan <jdugan at x1024 dot net>.
Other contributions from Ajay Tirumala, Jim Ferguson,
Feng Qin,
Kevin Gibbs,
John Estabrook <jestabro at ncsa.uiuc.edu>,
Andrew Gallatin <gallatin at gmail.com>,
Stephen Hemminger <shemminger at linux-foundation.org>

.SH "SEE ALSO"
libiperf(3),
http://code.google.com/p/iperf/
